package com.lebang.mapper;

import com.lebang.domain.TbDownloadMemberRecord;
import com.lebang.example.TbDownloadMemberRecordExample;

import java.util.Date;
import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

@Mapper
public interface TbDownloadMemberRecordMapper {
    long countByExample(TbDownloadMemberRecordExample example);

    int deleteByExample(TbDownloadMemberRecordExample example);

    int deleteByPrimaryKey(Long id);

    int insert(TbDownloadMemberRecord record);

    int insertSelective(TbDownloadMemberRecord record);

    List<TbDownloadMemberRecord> selectByExample(TbDownloadMemberRecordExample example);

    TbDownloadMemberRecord selectByPrimaryKey(Long id);

    int updateByExampleSelective(@Param("record") TbDownloadMemberRecord record, @Param("example") TbDownloadMemberRecordExample example);

    int updateByExample(@Param("record") TbDownloadMemberRecord record, @Param("example") TbDownloadMemberRecordExample example);

    int updateByPrimaryKeySelective(TbDownloadMemberRecord record);

    int updateByPrimaryKey(TbDownloadMemberRecord record);

    List<Map> selectRetention(@Param("timeOne") Date timeOne, @Param("timeTwo") Date timeTwo, @Param("store") String store, @Param("sdk_key") String sdk_key, @Param("startNum") int startNum, @Param("pageSize") int pageSize);

    List<String> selectAllStore();

    List<String> selectAllSdk_key();
}